Systems and methods to implement point of sale (POS) terminals, process orders and manage order fulfillment

ABSTRACT

Systems and methods to integrate point of sale processing, online order processing, and supply chain and store management over the Internet. In one aspect, a central server provides point of sale, online order processing, and supply chain and store management functions via browser based interfaces. The system enables users to enter orders from remote locations for order fulfillment at brick and mortar retail locations, where the POS terminals configured based on the browser based interfaces can be changed into a self service mode to allow customers to place orders for themselves at the retail locations.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Prov. Pat. App. Ser. No.61/259,107, filed Nov. 6, 2009, and U.S. Prov. Pat. App. Ser. No.61/390,580, filed Oct. 6, 2010 the disclosures of which applications areincorporated herein by reference in their entirety.

FIELD OF THE TECHNOLOGY

At least some embodiments disclosed herein relate, in general, to orderplacement, point of sale, and/or order fulfillment for products and/orservices provided in retail locations (400), such as restaurants, fastfood chains, coffee shops, bars, clubs and other retail establishments.

BACKGROUND

Small businesses face significant challenges in adapting to, and takingadvantage of, an increasingly networked world. The Internet (800) hasopened up new opportunities and challenges for retailers to betterservice their customers. The Internet (800) can provide a vehicle forcustomers to place orders online. Some retailers provide systems thatenable customers to place orders online. However, such dedicated systemsare typically out of reach for many businesses from a cost standpoint.

To attract customers, some retailers permit customers to use the accesspoint (440) to access internet (800) without requiring the customers tomake purchases. Other retailers provide customers with access codes onpurchase receipts (1400); and the customers can use the access codes tolog into the in-store wireless networks for a limited period of time.

BRIEF DESCRIPTION OF THE DRAWINGS

The embodiments are illustrated by way of example and not a limitationto the figures of the accompanying drawings in which like referencesindicate similar elements.

FIG. 1 illustrates one embodiment of a web based point of sale and storemanagement system.

FIG. 2 illustrates an embodiment of three different ways of initiating astore order on a system for supporting in-store delivery of products(1700) and services such as that shown in FIG. 1.

FIG. 3 illustrates an embodiment of a user interface enabling customersto place orders for products and services.

FIG. 4 illustrates an embodiment for a login page for in-store WiFiaccess and ordering.

FIG. 5 illustrates an embodiment of an interface for a store employee todisplay an order in process, specify tender types and enter paymentamounts.

FIG. 6 illustrates an embodiment of a pop-up window launched from theinterface in FIG. 5 for customizing orders with product options andpurchase options.

FIG. 7 illustrates an embodiment of a report of the most recentcustomers of a store.

FIG. 8 illustrates an embodiment of a report of the most recenttransactions at a store.

FIG. 9 illustrates an embodiment of an interface to set store hours.

FIG. 10 illustrates an embodiment of an interface that displays changesmade to various pages on the system.

FIG. 11 shows a block diagram of a data processing system which can beused in various embodiments of the disclosed systems and methods.

DETAILED DESCRIPTION

The following description and drawings are illustrative and are not tobe construed as limiting. Numerous specific details are described toprovide a thorough understanding. However, in certain instances, wellknown or conventional details are not described in order to avoidobscuring the description. References to one or an embodiment in thepresent disclosure are not necessarily references to the sameembodiment; and, such references mean at least one.

Reference in this specification to “one embodiment” or “an embodiment”means that a particular feature, structure, or characteristic describedin connection with the embodiment is included in at least one embodimentof the disclosure. The appearances of the phrase “in one embodiment” invarious places in the specification are not necessarily all referring tothe same embodiment, nor are separate or alternative embodimentsmutually exclusive of other embodiments. Moreover, various features aredescribed which may be exhibited by some embodiments and not by others.Similarly, various requirements are described which may be requirementsfor some embodiments but not other embodiments.

In one embodiment, “social media” includes electronically-storedinformation that users send or make available to other users for thepurpose of interacting with other users in a social context. Such mediacan include directed messages, status messages, broadcast messages,audio files, image files and video files. In one embodiment, “socialmedia websites” or “social networking websites” include a website thatfacilitates the exchange of social media between users. Examples of suchwebsites includes social networking websites such as Facebook andLinkedIn, microblogging websites such as Twitter, local-based socialnetworking websites such as Foursquare, and websites to provide discountoffers to a group, such as Groupon.

In one embodiment, “Point of Sale” or “POS” systems include a system forprocessing customer orders at a point where the product is physicallydelivered (1700) to customers. Such systems could include devices forcontrolling cash registers, payment card readers, receipt printersand/or barcode scanners. In one embodiment, a POS system is to beprovided by software operating on specialized hardware, and couldadditionally provide for, without limitation, tracking and managingstore-level inventory, ordering for inventory products and supplies andcoordinating inventory with sales, as well as tracking employeeinformation, such as employee hours and/or sales.

In one embodiment, “transactions” include an event by which a retailerreceives income or incurs a liability. Income events could include salesof products, whether online or at a brick-and-mortar location. Liabilityevents could include sales of products from wholesalers or other typesof suppliers, whether to fulfill customer orders, replenish stock orobtain store supplies (e.g. register tapes). Liability events could alsoinclude the logging of hours worked by employees.

In one embodiment, a system is provided to allow customers of retailersto place their own orders and reduce or eliminate their waiting in line.In one embodiment, the order system is also integrated withpoint-of-sale systems at brick-and-mortar locations to provide in-storesales and management capabilities, replacing expensive, specialized,hardware and software. Further, in one embodiment, the system isconfigured to provide centralized management of inventory, distributionand store management and control.

Various embodiments of the systems and methods disclosed herein relateto systems that provide integrated order processing and management forrestaurants, coffee shops, and similar retail businesses via theInternet (800). FIG. 1 illustrates one embodiment of a web based POS andstore management system. A POS services provider (100) provides at leastone centralized server (120) that implements functionality to takeorders from customers (220, 240, 260 and 280) via various channels.

In one embodiment, the system implements point-of-sale functionality atbrick-and-mortar retail locations (400) via point of sale terminals(420) which can include point of sale printers (422) and payment cardreaders (not shown). The point of sale terminals (420) enable in-storeemployees to receive purchase orders from in-store customers (220), forexample, at conventional check stands. In one embodiment, the POSterminal (420) provide a browser based interface to the order takingsystem hosted on central servers (120), and to show the list of pendingorders for fulfillment. In one embodiment, a POS terminal (420) can beturned into a self-service terminal when the shop employee/cashier isabsent, where, in one embodiment, the terminal displays a interfacesimilar to, or identical to the web-based ordering interface provided tocustomers (260) located remote to the store over the Internet (800)(discussed in detail below).

In one embodiment, the central servers (120) interfaces with andcontrols WiFi access points (440) at store locations 400 to allowcustomers (e.g. 220, 240, 260 and 280) having WiFi enabled devices (e.g.242) to place orders through their devices and the WiFi access pointsand thus, gain Internet (800) access via the WiFi access points (440) asa result of such orders. In one embodiment, the central servers (120)allows merchants to track customer activities conducted via the WiFiaccess points (440) and to direct advertisements to such customers onthe basis of such activities.

In one embodiment, many aspects of POS terminal (420) functionalitiesare provided by POS terminal (420) via a web browser-based applicationrunning on the central servers (120) over the Internet (800), such asorder queue, payment card processing (e.g., processing credit cards,debit cards, bank cards). In one embodiment, the majority of the POSterminal (420) functionalities are available via browser-based softwareloaded on, for example, a USB drive, even when the network connection tothe central servers (120) is not available. In one embodiment, thesoftware implementing the functionalities of the POS terminal (420) canbe installed via online download from the central servers (120). In oneembodiment, when the network connection to the central servers (120) isavailable, the POS terminal (420) are operated by the real time datafrom the central servers (120). In one embodiment, when the networkconnection to the central servers (120) is not available, or temporarilyinterrupted, the POS terminal (420) is to continue run in a stand alonemode to process orders in the queue and new orders placed directly onthe POS terminal (420), and synchronize with the central servers (120)when the network connection to the central servers (120) isre-established.

In one embodiment, the system additionally provides a web-based orderinginterface that allows customers (260) located remote to brick-and-mortarretail locations (400) to place orders for later pick up atbrick-and-mortar retail locations (400). In one embodiment, the orderscan be delivered to a location specified by the customer (260). In oneembodiment, the ordering interface is provided by an application runningon the central servers (120) over the Internet (800). A user may accessthe application via a web-browser, or a mobile application (e.g.,running on a mobile phone). In one embodiment, the ordering interfaceallows customers to associate previously placed orders with keywords,allowing an order to be resubmitted by providing the keyword associatedwith the order.

In one embodiment, the central servers (120) provides order processingservices as described above to a large number of merchants and customersof such merchants, and accepts orders from widely distributed locations,including retail locations (400) and customers who have access to theInternet (800) via Internet connected user devices. Regardless of whereand/or how customer orders are placed, the system dispatches the ordersto POS terminal (420) at the appropriate retail locations (400). In oneembodiment, the central servers (120) dispatches one or more orderqueues, tracks pick up times, provides notification of delays in orderfulfillment, and so forth. In one embodiment, retailer's employees cansign in to the central servers (120) from the POS terminal (420) or aremote location to see the queue of orders.

In one embodiment, the system additionally provides a voice-based,touch-tone and/or text message ordering interface that allows customers(280) located remote to brick-and-mortar retail locations (400) to placeorders, for example, later pick up at brick-and-mortar retail locations(400). In one embodiment, such interfaces allow customers to resubmitand/or modify previously placed and/or saved orders associated with akeyword by supplying the keyword.

In one embodiment, the centralized server (120) additionally providesvarious store management services such as, for example, employeeclock-in, inventory management, management of WiFi access within retaillocations (400), remote store closing, real time promotion management,vendor payout tracking and customer subscription management.

In one embodiment, the central servers (120) additionally managesaccounts for customers to allow the customers to store their personalinformation, payment information such as payment cards (e.g. debitand/or credit card), ordering preferences, ordering history and storedorders that can be submitted for fulfillment on demand In oneembodiment, the centralized server (120) allows customers to link theirsocial networking accounts with their account on the central servers(120) or accounts on other social networks.

In one embodiment, information obtained from social networking servicesis used to enhance security, for example, by obtaining information toidentify a user, such as a user photograph, which is displayed withcustomer orders, enabling store employees to verify an the personplacing the orders. In one embodiment, information obtained from socialnetworking services is used to interact with users, for example, byposting customer orders, specials, promotions and delay notifications tousers social accounts. In one embodiment, information obtained fromsocial networking services is used to determine if a user's friends arepresent in, or have purchased products or services from, a retailer or aspecific retail location (400).

In one embodiment the POS software and access to the central servers(120) are provided as a service and may be paid, for example, based onthe transaction volume, the number of POS terminal (420), and so forth.

Ordering Processing and Fulfillment

FIG. 2 illustrates an embodiment of three different ways of initiating astore order on a system for supporting in-store delivery (1700) ofproducts and services such as that shown in FIG. 1. One method ofinitiating a store order is reflected in block 1100, where a customerconnects to a server computer (1600) (such as the Central servers (120)of FIG. 1) from a remote location over the Internet (800) and submits anorder via, for example, a web-browser based interface, a mobileapplication based interface, or an SMS-based interface. Such connectioncould be made, for example, via a personal computer, laptop, PDA, asmartphone or any other device capable of providing Internet (800)access.

In one embodiment, an order for a remote customer purchase (1100) couldinclude an identification of the customer placing the order (e.g. a userID, credit card number, or phone number), an identification of theretailer servicing the order (e.g. a name or other unique identifier),identifies one or more products, preferences for one or more products onthe order, fulfillment locations (e.g. retail locations where the orderis delivered (1700)), payment information for orders and a requestedpickup time. When the customer places an order online, it is reflectedon the server computer (1600).

In one embodiment, the server computer (1600) serves web pages (2000)enabling online ordering, such as those shown in FIG. 3. The samplewebpage (2000) provides a menu (2010) for a coffee shop and a window(2020) for adding products (2022) to a customer order and forcustomizing the order (2024), by, for example, providing preferences forproducts on the order (e.g. use skim milk in a latte). In oneembodiment, the window allows the customer to save the order (2026) forsubmission or resubmission at a later time. In one embodiment, savedorders are stored by the server computer (1600) in association with auser account for the customer. In one embodiment, previously submittedorders are automatically retained by the server and can be resubmittedby the user at a later time. When a customer has finished specifying theorder, the customer can click a submit button (2028) (e.g., via touchingthe submit button (2028) on a touch screen, clicking a button on acursor control device, such as a mouse or a touch pad, while the cursoris positioned on the submit button (2028)), whereupon the customer ischarged for the order and the order is dispatched to the fulfillmentlocation and the retailer prepares the products on the order inaccordance with preferences stated on the order (if any). In oneembodiment, the order is added to an order queue maintained by theserver computer (1600) that can be displayed at the fulfillment locationand/or other remote locations. In one embodiment, the POS terminal (420)(e.g., running a script in a web page downloaded from the central server(120)) also involves in queuing the orders. Thus, even when theconnection between the POS terminal (420) and the central server (120)becomes unavailable for a period of time, the POS terminal (420) cancontinue manage, display, and/or update the order queue via the webpage. In one embodiment, the central sever (120) dispatches the ordersto the POS terminal (420) without forming and managing the queue for thePOS terminal (420).

In one embodiment, the system additionally provide ordering capabilitiesvia telecommunications capabilities associated with a phone, such as,for example, via text messages, voice messages, touch-tone basedmessages, IP, WAP or HTTP or HTTPS requests, over a voice network (900),a cellular network, a WiFi connection and/or a wired connection.

In one embodiment, the server computer (1600) allows users to storeorders previously placed by a customer in association with a keyword. Inone embodiment, the stored order optionally, additionally includes anidentification of a computing device of the customer. The identificationof the computing device could reflect the device the customer originallyused to place the stored order, or could reflect another user deviceknown to the server computer (1600). For example, in one embodiment, anidentification of a computing device of a customer on a stored ordercould comprise a phone number associated with a user account for thecustomer on the server computer (1600) or could alternatively, reflectthe phone number the order was placed from.

In one embodiment, the server computer (1600) allows customers toresubmit stored orders for processing and fulfillment. In oneembodiment, a customer could then remotely submit a stored order bysubmitting a communication to the server computer (1600) including (orconsisting solely of) the keyword associated with the order. In oneembodiment, the server computer (1600) can receive such communicationsin any format suitable for electronic communications, such as via textmessages, email messages, instant message, voice messages, phonemessages, etc. In one embodiment, the server computer (1600) identifiesthe device from which the communication originated. The identifieddevice is then used to determine the identity of the customer submittingthe order and verify that the identified device is permitted to submitthe stored order for processing.

In one embodiment, server computer (1600) provides a voice responsesystem that allows customers to submit stored orders via a voicecommunication to the voice response system which includes, or consistssolely of, a keyword identifying a stored order. In one embodiment, theserver computer (1600) identifies the phone number from which the voicecommunication originated. The identified phone number can then be usedto determine the identity of the customer submitting the order andverify that the identified phone number is permitted to submit thestored order for processing. Additionally or alternatively, the voiceresponse system could implement a touch-tone, or voice recognition,order submission interface that allows, for example, an order keyword tobe specified using the buttons of a phone. In one embodiment, the voiceresponse system additionally provides capabilities to modify storedorders, for example, by changing a preference for a product on an orderor deleting a product from an order.

In one embodiment, voice recognition capabilities are implemented oncustomer devices using one or more mobile applications. In oneembodiment, the mobile applications recognize a keyword for an order ina user voice message and submit the keyword to the server computer(1600) in any suitable format, such as, for example, a text message, anemail or a WAP dialogue, or other network transmission. In oneembodiment, the mobile applications additionally recognize voicemessages comprising modifications to stored orders, for example, changesto preferences for a product on an order or deleting a product from anorder. Such modifications could be submitted with the keyword the servercomputer (1600) for processing.

Regardless of how a request to resubmit a stored order is received,however, once the order is identified using, for example, using akeyword and an identifier for a user device, the order is retrieved,modified if applicable, and processed like any order received remotely.In one embodiment, the customer is charged for the order and the orderis dispatched to the fulfillment location and the retailer prepares theproducts on the order in accordance with preferences stated on the order(if any). In one embodiment, the order is added to an order queuemaintained by the server computer (1600) and/or the POS terminal (420)that can be displayed at the fulfillment location and/or other remotelocations.

Another method of initiating a store order is reflected in block 1200,where the customer uses a network provided by the store at abrick-and-mortar location, for example, an in-store WiFi Internetconnection (e.g., via a customer's mobile device). In one embodiment,the in-store WiFi Internet connection is provided via a wireless localarea network access point physically located in or near the store thatprovides connectivity to the Internet (800). In one embodiment, thestore permits customer to use the access point (440) to access internet800 at no charge. In one embodiment, only users are permitted to use theaccess point (440) to access internet (800). In one embodiment, thewireless local area network access point is managed remotely by theserver computers (1600).

In one embodiment, when an in-store customer (240) initially accessesthe store's WiFi using a mobile device, the customer is routed to adefault landing page for the store, such as shown in element (2100) ofFIG. 4. The page provides a point (2120) to initiate an order. In oneembodiment, the system may then prompt the user to login to a useraccount maintained by the central servers (120) using, for example, auser ID, or may automatically identify the customer based on anidentifier associated with the customer's device, such as, for example,the device's hardware ID, and/or Media Access Control (MAC) address.Alternatively, the customer may not be required to login, and thecustomer supplies identifying information at the time of purchase. Ineither case, in one embodiment, the user is then routed to an orderentry screen such as that shown in FIG. 3 for entry of one or moreproducts and preferences.

In one embodiment, when the order is complete, the order is processed ina manner similar to orders received remotely. In one embodiment, thecustomer is charged for the order and the order is dispatched to thefulfillment location and the retailer prepares the products on the orderin accordance with preferences stated on the order (if any). In oneembodiment, the order is added to an order queue maintained by theserver computer (1600) that can be displayed at the fulfillment locationand/or other remote locations.

In one embodiment, customers can be awarded access point (440) to accessinternet (800) time as a premium for placing an order. In oneembodiment, upon receiving payment for an order, the central servers(120) determine a length of time period the customer will be permittedto use the access point (440) to access internet (800) via the wirelesslocal area network access point. In one embodiment, the length of timeperiod is a flat amount per transaction (e.g. an hour). In oneembodiment, the length of time period is proportional to the amount ofthe customer's purchase (e.g. 15 minutes for every $1.00). In oneembodiment, the length of time period commences as soon as the purchaseis complete, and the customer is routed to an Internet access page. Inone embodiment, the length of time period commences when the customerexpressly logs onto the system via an Internet access page using, forexample, an order number associated with an order. In one embodiment,every time a customer makes a purchase, the length of time period isadded to a total length of time period that the central servers (120)tracks via, for example, a user account for the customer.

If the customer previously placed an order, such as, for example, viaremote access (e.g. 1100), the interface provides an entry window 2140to enter in an order number. As in the case of a remote customer order,the order is reflected on a centralized server 1600 and can, in oneembodiment, be displayed and modified using the interface shown in FIG.3.

In one embodiment, WiFi management functions provided by the system areaware of specific mobile devices, such as mobile phones,iPhone/iPod/iPad, smartphones powered by an operating system such asAndroid, used by customers known to the central servers (120). In oneembodiment, when a customer enters a WiFi coverage area with a mobiledevice, the WiFi access point (440) automatically detects an identifierfor device (e.g. the device's hardware ID, and/or Media Access Control(MAC) address). In one embodiment, the central servers (120) thenattempts to match the device identifier to customer devices known to thecentral servers (120), via for example, user accounts, user profiles orprevious orders for the purpose of identifying the customer.

In one embodiment, if a user is positively identified using the deviceidentifier, the central servers (120) determine if the user has aroutine order (or order pattern). If the user has a regular order (ororder pattern), a predicted order can be created based on the regularorder or order pattern. In one embodiment, the order is dispatched tothe retailer, but is not charged to the customer until it is confirmedby the customer.

In one embodiment, the customer can quickly confirm the predicted ordervia the customer's mobile device and pick up the order with minimumdelay. For example, a swipe or bump of the customer's mobile device witha retailer's device can provide/exchange information between the mobiledevice and the retailer's device via Near Field Communication (NFC)capability of the mobile device to confirm an order without operating onthe keys or touch screen of the mobile device. Alternatively, such aconfirmation could be automatically submitted when the mobile device iswithin a predetermined range of the retailer's device.

Alternatively or additionally, central servers (120) transmits a messageto the customer's mobile device requesting confirmation of the predictedorder. Such confirmation could comprise a text message, an email, avoice message, or a landing page to access the wireless access point.The customer can then respond to the message to confirm the order.

In one embodiment, the central servers (120) tracks customer activitiesoccurring via an in-store WiFi network. Such activities include customerpurchases, as well as Internet sites visited by the customers. Suchpurchases and activities could then be used to select directedadvertisements that are sent to customers, for example, via customerwireless devices.

A third method of initiating a store order is reflected in block 1300,where the customer is assisted by in-store personnel who take the order.In one embodiment, in-store personnel place orders using in-store POSterminal (420) via a browser based interface provided by the centralservers (120) over the Internet (800). The interface can additionallyprovide various order management functions, such as displaying thestore's order queue, displaying and printing receipts (1400) forindividual order, and payment processing e.g. payment card processing(e.g., processing credit cards, debit cards, bank cards, and otherpayment methods, such as payment intermediary services based on phonenumbers, email addresses, etc.).

FIG. 5 illustrates one embodiment of an interface (2200) for a storeemployee to display an order in process (2220), specify tender types(2240) and enter payment amounts (2280). FIG. 6 illustrates a pop-upwindow (2320) launched from the interface in FIG. 5 for customizingorders with product preferences (2340) and add-on purchase options, suchas, for example, WiFi access time. In one embodiment, the in-store POSsystem interface as illustrated in FIGS. 5 and 6 is tied to the centralservers (120) in real time, and the order is placed using processesimplemented on the server.

In one embodiment, when a customer pays for an order using a paymentcard, via, for example a card reader attached to a POS terminal (420),the card information is used to look up the customer's account orprofile on the central servers (120) (if one exists). In one embodiment,the customer's account is used to provide information identifyinginformation of the customer, such as a customer photograph or othersimilar information. In one embodiment, customer identifying informationis displayed in conjunction with the store order on POS terminal (420)interfaces and is printed on order receipts (1400). In one embodiment,orders placed by the customer are stored in association with thecustomer account and can be used for various functions as discussedabove, such as automated, predicted orders for WiFi customers asdescribed above.

In one embodiment, when the order is complete, the order is processed ina manner similar to orders received remotely or via WiFi. In oneembodiment, the customer is charged for the order and the order isdispatched to the store and the retailer prepares the products on theorder in accordance with preferences stated on the order (if any). Inone embodiment, the order is added to an order queue maintained by theserver computer (1600) that can be displayed at the store and/or otherat remote locations.

In one embodiment, the system could additionally provide a self-servicemode for POS terminal (420). In one embodiment, when the terminal is inself service mode, the POS terminal (420) displays an order entryinterface similar to, or identical to that provided for remote orderentry such as shown in FIG. 3. In one embodiment, a user can enter anorder using their user account, or alternatively, anonymously. In oneembodiment, if a customer pays cash to an employee in the store wherethe order is placed, the user does not have to log in and can operate asan anonymous user. In one embodiment, if the user pays via a previouslyused credit or debit card, the system automatically links the user tohis or her account.

In one embodiment, POS terminal (420) are capable of running in anoffline mode when the connection to the central servers (120) is notavailable. In one embodiment, POS terminal (420) include program logicthat continuously monitors the connection of the terminals to remoteorder processing service implemented on the central servers (120). Whena connection to a remote order processing server is not available to aPOS terminal (420), the terminal is placed in offline mode. When the POSterminal (420) is in offline mode, the terminal is to continue runningthe order processing software loaded from a computer readable mediumlocally accessible to the terminal, such as, for example, a hard driveor a USB drive, or previously downloaded from the central server (120).In one embodiment, when the POS terminal (420) is in offline mode, theorder processing software is to store data on a local nonvolatilestorage device (e.g., in accordance with an HTML specification) until aconnection to the central server (120) becomes available to allow thedata to be reported to the central server (120). In one embodiment, theorder processing software is browser based and provides order entryinterfaces similar or identical to those provided by the central servers(120) when the POS terminal (420) is in online mode. In one embodiment,POS terminal (420) periodically provide an audible alert when they areoffline mode using a sound device operatively connected to the POSterminal (420).

In one embodiment, when a POS terminal (420) is in offline mode,transactions are stored locally on storage accessible to the POSterminal (420) and synchronized with the central servers (120) when thePOS terminal (420) goes back online. The POS terminal (420) can beconfigured to support both cash and credit cards transactions in offlinemode. In the case of credit card transactions, when the card is swiped,the card information is encrypted using a public key/private keyencryption scheme, where the order processing software provides logic toencrypt the account information using a public key of the remote orderprocessing server (the private key is only known on the order processingserver) The account information is then stored in an encrypted form onthe POS terminal (420). In one embodiment, the order processing softwareallows purchases made via a payment card to be fulfilled before theprocessing of payment for the purchases using customer accountinformation, notwithstanding the fact that payment for such purchasesmay be declined when the order transaction is actually processed by anorder processing server. The POS terminal (420) itself contains noinformation to decrypt the encrypted account information once theinformation is encrypted. In one embodiment, the POS terminal (420) doesnot store the swipe track from a payment card purchase. Instead, the POSterminal (420) reads the card number and name out of the swipe track andstores that information in an encrypted form.

In one embodiment, when the POS terminal (420) returns to online mode(e.g. when a lost Internet connection is restored) the POS terminal(420) synchronizes with the central servers (120). In one embodiment,the stored order transactions, which may include encrypted payment cardinformation are automatically submitted to order processing servers. Inone embodiment, the order processing servers use the private key of thepublic/private key encryption scheme used to decrypt encrypted paymentcard account information transmitted with the orders. In one embodiment,orders are submitted to credit card clearing services as ecommerce typetransactions (as if the credit card numbers were submitted over Internetby the cardholders) or as hand-keyed transactions, instead of “swipe”type of transactions. When the POS terminal (420) synchronizes with thecentral servers (120), some transactions may be declined, however thecost of a few declines will be significantly less costly than notaccepting credit cards transactions during an outage.

In one embodiment, if the POS terminal (420) is in online mode, paymentaccount information is transmitted to the order processing server as a“card present” payment transaction, when stored transactions aretransmitted to the remote order processing server becomes availableafter the encrypted account information is stored by the order storagelogic, encrypted payment account information is transmitted to the orderprocessing server as a “card not present” payment transaction.

In one embodiment, the public/private key encryption scheme used forencrypting payment card information for stored transactions when the POSterminal (420) is in offline mode is also used to encrypt paymentinformation for transactions transmitted to order processing servers inreal-time when the POS terminal (420) is in online mode.

In one embodiment, regardless of how the order is placed, when an orderis fulfilled at a store, a receipt (1400) for the order prints at anin-store POS terminal (420). Since the server computer (1600) haspreviously received the order, the server can access previously storedcustomer information or identifiers (or identifiers stored on the mobiledevice of the customer), such as the customer's full name and picture(e.g., retrieved from social network sites with user's permission). Apurchase card used for an in-store purchase 1300 can be used to identifya customer. In one embodiment, if a picture is available for thecustomer, it is printed on the receipt (1400) as a security feature. Thepurchaser's picture and their name help can assist store staff to verifythe purchaser when an order is picked up 1700.

In one embodiment, the central servers (120) provides a user interfaceto store personnel for displaying the store's current order queue, whichcan be prioritized using various criteria, such as, for example,requested pickup time. In one embodiment, such an order queue interfacecan be a browser based interface provided by the central servers (120)that can be displayed on POS terminal (420) at store level, or ondevices located remote to the store. In one embodiment, the order queueinterface displays order details and the fulfillment status ofindividual orders.

In one embodiment, the order queue interface can prompt store employeesthat an order is to be picked up shortly (e.g., highlight an order whenits pickup time is close and push other orders backwards). In oneembodiment, the centralized server (120) can schedule and prioritize theorders based on the estimated/requested pickup time (in-store orderand/or orders that are near their requested pick up time would be givenhigh priority). In one embodiment, the centralized server (120) canschedule and prioritize a plurality of orders for a fulfillment locationbased on estimated preparation time and requested fulfillment time

In one embodiment, the central servers (120) provide delay notificationsto customers when there is an expected delay in order fulfillment (e.g.,the central servers (120) determines there is a long order queue at aretail store and may estimate the delay based on statistical data, sothat the customer can come to the store at the right time to pick up theorder without have to wait). In one embodiment, the centralized server(120) sees all the orders at a retail location (400) coming from varioussources and collect statistical data about order fulfillmentspeed/pattern, patterns of demand, and so forth, and uses suchinformation to schedule and prioritize orders.

In one embodiment, as discussed above, the central servers (120) providefacilities to allow customers to define and maintain user accountsand/or profiles. Such accounts and/or profiles can include customerdemographic information, user identification information, customerpayment card information, customer device information and can beassociated with various types of data relating to customers, such as,for example, customer orders with one or more retailers. Where customerpayment card information is stored in a user account, the stored paymentcard information can be used for quick purchases online, and can be usedto identify customers when a customer presents the card for purchase ata store.

In one embodiment, the central servers (120) provide facilities to allowcustomer accounts to be linked to user social networks (such as Facebookand/or Twitter). In one embodiment, the central servers (120) can obtaininformation from such social networks to identify customers, such ascustomer photographs. In one embodiment, the central servers (120) caninteract with customers, for example, by posting customer orders,specials, promotions and delay notifications to customer's socialnetworking accounts. In one embodiment, information obtained from socialnetworking services is used by the central servers (120) to determine ifa customer's friends are present in, or have purchased products orservices from, a retailer or a specific retail location (400) and tonotify the customer accordingly via one more social networks, or otherInternet based groups, subgroups, meet-up groups or communities.

In one embodiment, when an order is processed, regardless of how theorder was placed, the server central servers (120) update social networkinformation for the customer who placed the order (1800). This couldinclude, for example a tweet on the customer's Twitter account or a postto a Facebook wall of the customer and/or the retailer. The centralservers (120) could also report the most recent customers of the storeon a webpage (2400) managed by, or on behalf of a retailer, for example,see FIG. 7. The system could also track customers social networks andidentify friends of customers who ordered products at a retail location(400), for example, within a time period (e.g. in the last 15 minutes).

Store Management Functions

A system for supporting in-store delivery (1700) of products andservices can provide store management functions (1900) separate fromorder processing functions. In one embodiment, such functions arehandled by central servers (120) in conjunction with in-store POSfunctions. Such functions could include real time reporting oftransactions (2500) as shown in FIG. 8. In various embodiments, thecentral servers (120) additionally provide functionality for clockingemployees in and out at a plurality of remote locations, wireless accessmanagement functions for managing wireless access at a plurality ofremote locations, inventory management functions for managinginventories at a plurality of remote locations, employee reporting forreporting employees that are clocked in; wireless usage reportingfunctions for reporting wireless network usage at a plurality oflocations; store management functions (1900) for remotely closing one ormore of the plurality of store locations, real time promotion managementfunctions for automatic management of special promotions at a pluralityof remote locations, payout tracking functions for tracking payouts tovendors at a plurality of remote locations, item management functionsfor managing the properties of items for sale at each of a plurality ofremote locations, and customer subscription functions for managingcustomer subscription features. In one embodiment, the customers areprovided with a user interface to not only order from the menu of theretailer, but also rate the items on the menu. In one embodiment, thecustomers are limited to rate the items that they have ordered. In oneembodiment, based on and/or in response to the rating input from thecustomers, the central server (120) is to generate a discount campaignby sharing the menu choices with the friends of the customers, where thefriends of the customers are identified based on account/profileinformation of the customers in the social networking websites.

In one embodiment, time clock functions provided via the central servers(120) include security features, for example, when employees clock inand out via a POS terminal (420), the terminal can be equipped to take apicture of the employee when a clock in or clock out event occurs. Byusing the picture as a form of security, time clock fraud can beminimized. The picture is recorded and stored in real time, and isavailable to management immediately. In one embodiment, the centralservers (120) provide interfaces that allow store management to viewclock in and clock out events at store level and remotely from thestore.

In one embodiment, payout tracking functions provided via the centralservers (120) provide real time payout tracking. In one embodiment, thePOS terminal (420) could be used to record payouts to vendors. Payoutscould include any payments for supplies (e.g. register tapes) orproducts sold at store level, such as items sold to consumers, In oneembodiment, notifications could be sent to store management of anypayouts, or payouts over a predetermined amount.

In one embodiment, inventory tracking functions provided via the centralservers (120) include functions that allow entry of inventory counts atPOS terminal (420) or via a web interface at remote locations. In oneembodiment, the central servers (120) calculate changes to inventory inreal-time based on processed orders. In one embodiment, notificationscan be sent to store management if inventory falls below a preset levelfor any item. In one embodiment, central servers (120) provide aninterface, displayable on the POS or a remote interface, to remove itemsfrom sale, or change the features of any item (e.g., modifiers on thatitem) and/or display inventory levels.

In one embodiment, subscription functions provided via the centralservers (120) could include, for example, functions for automaticallybilling a customer at a set interval (e.g., monthly) and couldadditionally include features such as not having to pay for coffee orWiFi when subscribed). In one embodiment, the system could take andmanage subscriptions. All three ordering methods detailed above (e.g.1100, 1200 and 1300) could integrate with subscription features, forexample, providing discounts to customers meeting predefined criteria.The usage of subscription features by customers could also tracked.

In one embodiment, WiFi management functions provided via the centralservers (120) include WiFi administration functions to manage WiFiaccess for customers from the POS terminal (420) or from a remoteinterface. Such functions could include, for example, giving customersaccess time as a premium for purchasing products or limiting customeraccess. Such functions could additionally include tracking customeractivities on the in-store WiFi, including web sites visited and/orInternet searches conducted. Such information could be used to senddirected advertisements to customers

In one embodiment, store management functions (1900) provided via thecentral servers (120) include functions to set store hours via aremotely accessible interface, such as, for example, the interface(2600) as shown in FIG. 9. In one embodiment, the system could providefunctions to remotely close a store. In one embodiment, the centralservers (120) could provide blogs and website content for the store.

In one embodiment, real time promotion functions provided via thecentral servers (120) include functions for real time promotion, forexample, providing real time order information across a chain (atdifferent locations) for automatic management of a special (e.g., adiscounted price on an item for the first two hundred orders within aperiod of time). The server has the real time order and fulfillmentinformation and thus can support real time promotions based on suchinformation. For example, the server could allow a merchant to promotethe first one hundred orders via Twitter or other social media.

In one embodiment, the central servers (120) can additionally providetools to allow retailers and/or system administrators to modify, forexample, menus, text and prices displayed on interfaces provided by thecentral servers (120). FIG. 10 shows one embodiment of an interface(2700) that displays changes made to various pages on the system.

FIG. 11 shows a block diagram of a data processing system 3100 which canbe used in various embodiments of the disclosed system and method. WhileFIG. 11 illustrates various components of a computer system, it is notintended to represent any particular architecture or manner ofinterconnecting the components. Other systems that have fewer or morecomponents may also be used. In one embodiment, one or more dataprocessing systems, such as that shown in 3100 of FIG. 11, implementcentral servers (120) and the POS terminal (420) of FIG. 1 shown inFIGS. 1 and 2. Other configurations are possible, as will be readilyapparent to those skilled in the art.

In FIG. 11, the data processing system 3100 includes an inter-connect(3200) (e.g., bus and system core logic), which interconnects amicroprocessor(s) (3300) and memory (3800). The microprocessor (3300) iscoupled to cache (3400) memory in the example of FIG. 11.

The inter-connect (3200) interconnects the microprocessor(s) (3300) andthe memory (3800) together and also interconnects them to a displaycontroller and display device (3700) and to peripheral devices such asinput/output (I/O) devices (3500) through an input/output controller(s)(3600). Typical I/O devices (3500) include mice, keyboards, modems,network interfaces, printers, scanners, video cameras and other deviceswhich are well known in the art.

The inter-connect (3200) may include one or more buses connected to oneanother through various bridges, controllers and/or adapters. In oneembodiment the I/O controller (3600) includes a USB (Universal SerialBus) adapter for controlling USB peripherals, and/or an IEEE-1394 busadapter for controlling IEEE-1394 peripherals.

The memory (3800) may include ROM (Read Only Memory), and volatile RAM(Random Access Memory) and non-volatile memory, such as hard drive,flash memory, etc.

Volatile RAM is typically implemented as dynamic RAM (DRAM) whichrequires power continually in order to refresh or maintain the data inthe memory (3800). Non-volatile memory (3800) is typically a magnetichard drive, a magnetic optical drive, or an optical drive (e.g., a DVDRAM), or other type of memory (3800) system which maintains data evenafter power is removed from the system. The non-volatile memory (3800)may also be a random access memory (3800).

The non-volatile memory (3800) can be a local device coupled directly tothe rest of the components in the data processing system. A non-volatilememory (3800) that is remote from the system, such as a network storagedevice coupled to the data processing system through a network interfacesuch as a modem or Ethernet interface, can also be used.

In one embodiment, the central servers (120) of FIG. 1 are implementedusing one or more data processing systems as illustrated in FIG. 11. Insome embodiments, one or more servers of the system illustrated in FIG.11 are replaced with the service of a peer to peer network or a cloudconfiguration of a plurality of data processing systems, or a network ofdistributed computing systems. The peer to peer network, or cloud basedserver system, can be collectively viewed as a server data processingsystem.

Embodiments of the disclosure can be implemented via themicroprocessor(s) (3300) and/or the memory (3800). For example, thefunctionalities described above can be partially implemented viahardware logic in the microprocessor(s) (3300) and partially using theinstructions stored in the memory (3800). Some embodiments areimplemented using the microprocessor(s) (3300) without additionalinstructions stored in the memory (3800). Some embodiments areimplemented using the instructions stored in the memory (3800) forexecution by one or more general purpose microprocessor(s) (3300). Thus,the disclosure is not limited to a specific configuration of hardwareand/or software.

While some embodiments can be implemented in fully functioning computersand computer systems, various embodiments are capable of beingdistributed as a computing product in a variety of forms and are capableof being applied regardless of the particular type of machine orcomputer-readable media used to actually effect the distribution.

At least some aspects disclosed can be embodied, at least in part, insoftware. That is, the techniques may be carried out in a computersystem or other data processing system in response to its processor,such as a microprocessor (3300), executing sequences of instructionscontained in a memory, such as ROM, volatile RAM, non-volatile memory(3800), cache (3400) or a remote storage device.

Routines executed to implement the embodiments may be implemented aspart of an operating system, middleware, service delivery platform, SDK(Software Development Kit) component, web services, or other specificapplication, component, program, object, module or sequence ofinstructions referred to as “computer programs.” Invocation interfacesto these routines can be exposed to a software development community asan API (Application Programming Interface). The computer programstypically comprise one or more instructions set at various times invarious memory and storage devices in a computer, and that, when readand executed by one or more processors in a computer, cause the computerto perform operations necessary to execute elements involving thevarious aspects.

A computer readable storage medium can be used to store software anddata which when executed by a data processing system causes the systemto perform various methods. The executable software and data may bestored in various places including for example ROM, volatile RAM,non-volatile memory (3800) and/or cache (3400). Portions of thissoftware and/or data may be stored in any one of these storage devices.Further, the data and instructions can be obtained from centralizedservers or peer to peer networks. Different portions of the data andinstructions can be obtained from different centralized servers and/orpeer to peer networks at different times and in different communicationsessions or in a same communication session. The data and instructionscan be obtained in entirety prior to the execution of the applications.Alternatively, portions of the data and instructions can be obtaineddynamically, just in time, when needed for execution. Thus, it is notrequired that the data and instructions be on a machine readable mediumin entirety at a particular instance of time.

Examples of computer-readable media include but are not limited torecordable and non-recordable type media such as volatile andnon-volatile memory (3800) devices, read only memory (ROM), randomaccess memory (RAM), flash memory devices, floppy and other removabledisks, magnetic disk storage media, optical storage media (e.g., CompactDisk Read-Only Memory (CD ROMS), Digital Versatile Disks (DVDs), etc.),among others.

In general, a machine readable medium includes any mechanism thatprovides (e.g., stores) information in a form accessible by a machine(e.g., a computer, network device, personal digital assistant,manufacturing tool, any device with a set of one or more processors,etc.).

In various embodiments, hardwired circuitry may be used in combinationwith software instructions to implement the techniques. Thus, thetechniques are neither limited to any specific combination of hardwarecircuitry and software nor to any particular source for the instructionsexecuted by the data processing system.

Although some of the drawings illustrate a number of operations in aparticular order, operations which are not order dependent may bereordered and other operations may be combined or broken out. While somereordering or other groupings are specifically mentioned, others will beapparent to those of ordinary skill in the art and so do not present anexhaustive list of alternatives. Moreover, it should be recognized thatthe stages could be implemented in hardware, firmware, software or anycombination thereof.

In the foregoing specification, the disclosure has been described withreference to specific exemplary embodiments thereof. It will be evidentthat various modifications may be made thereto without departing fromthe broader spirit and scope as set forth in the following claims. Thespecification and drawings are, accordingly, to be regarded in anillustrative sense rather than a restrictive sense.

What is claimed is:
 1. A non-transitory computer-readable medium storinginstructions that, when executed, cause a processor to performoperations comprising: presenting, at a mobile device, a mobileapplication-based interface to a user visiting a retailer on-line;receiving, through the mobile application-based interface at the mobiledevice, an indication from the user visiting the retailer on-line toconnect one or more social networking accounts of the user with a useraccount stored at a server of the retailer; obtaining, at the mobiledevice and from the server of the retailer, information identifyingfriends of the user; obtaining data indicating that: (i) a subset of theidentified friends of the user was present at a physical store of theretailer within a threshold time period immediately preceding the uservisiting the retailer on-line, and (ii) the subset of the identifiedfriends of the user ordered from the physical store of the retailerwithin the threshold time period immediately preceding the user visitingthe retailer on-line, the data being generated at the server of theretailer by obtaining, from the one or more social networking accountsof the user, the information identifying the friends of the user,determining a time and location of orders placed by the friends of theuser, comparing the location of the orders placed by the friends of theuser with a location of the physical store of the retailer, determiningwhether the time of the orders placed by the friends of the usersatisfies the threshold time period, and determining the subset offriends of the user that placed orders at the location of the physicalstore of the retailer at a time that satisfies the threshold timeperiod; presenting to the user, using the mobile application-basedinterface, information identifying the subset of the friends that haveordered from the physical store of the retailer; obtaining, at themobile device through the mobile application-based interface, an orderfrom the user visiting the retailer on-line; and communicating, from themobile device to the server of the retailer, the order from the uservisiting the retailer on-line.
 2. The computer-readable medium of claim1, wherein the one or more social networking accounts of the userinclude a Facebook account.
 3. The computer-readable medium of claim 1,wherein the order from the user further comprises payment information.4. The computer-readable medium of claim 1, wherein the order from theuser further comprises preferences for one or more products.
 5. Thecomputer-readable medium of claim 1, wherein the order from the userfurther comprises a requested pickup time for the order from the user.6. The computer-readable medium of claim 1, wherein the operationscomprise storing the order from the user in association with a keywordthat enables the user to resubmit the order from the user at a latertime using the keyword.
 7. The computer-readable medium of claim 6,wherein the order from the user is stored in association with anidentifier that corresponds to the mobile device.
 8. Thecomputer-readable medium of claim 6, wherein the operations comprise:receiving, at the mobile device, a command to resubmit the stored orderfrom the user, the command including at least the keyword that enablesthe user to resubmit the order from the user; communicating, from themobile device, the stored order to the server of the retailer such thatthe server of the retailer charges the user for the stored order anddispatches the stored order to the physical store of the retailer forfulfillment; and communicating, from the mobile device, the stored orderto the one or more social networking accounts of the user such that thestored order is posted on the one or more social networking accounts ofthe user.
 9. The computer-readable medium of claim 1, wherein the datais generated at the server of the retailer further by determining anidentification of one or more products, and an indication that theorders placed by the friends of the user do not include a carry outorder, and wherein the predetermined time period is less than one hour.10. The computer-readable medium of claim 1, wherein the operationscomprise: responsive to communicating the order from the user visitingthe retailer on-line, receiving: one or more advertisements based on theorder; a request to confirm a future order, the future order beinggenerated based on the order and an ordering pattern of the user; and anaward to be redeemed by the user at the physical store of the retailer,a value of the award being proportional to a purchase amount of theorder from the user visiting the retailer on-line.
 11. Thecomputer-readable medium of claim 1, wherein a time component of theaward is directly proportional to the purchase amount of the order fromthe user visiting the retailer on-line, and wherein the operationsfurther comprise: upon communicating a second order from the uservisiting the retailer on-line, receiving an indication of an increase inthe value of the award, the increase in the value of the award beingproportional to a purchase amount of the second order from the uservisiting the retailer on-line.
 12. The computer-readable medium of claim1, wherein the operations comprise: receiving, through the one or moresocial networking accounts of the user, information indicative of apromotion offered by the retailer; and after communicating the orderfrom the user, providing information to the server of the retailer toconfigure the promotion offered by the retailer, wherein the order isassociated with the promotion.
 13. The computer-readable medium of claim1, wherein obtaining data indicating that: (i) a subset of theidentified friends of the user was present at a physical store of theretailer within a threshold time period immediately preceding the uservisiting the retailer on-line, and (ii) the subset of the identifiedfriends of the user ordered from the physical store of the retailerwithin the threshold time period immediately preceding the user visitingthe retailer on-line, comprises: receiving, at the mobile device fromthe server of the retailer, information indicating that one or moredevices of the subset of the friends was: (i) determined, using WiFidata, to be located at the physical store of the retailer within thethreshold time period immediately preceding the user visiting theretailer on-line, and (ii) used to make one or more purchases at thephysical store of the retailer within the threshold time periodimmediately preceding the user visiting the retailer on-line.
 14. Acomputer-implemented method comprising: presenting, at a mobile device,a mobile application-based interface to a user visiting a retaileron-line; receiving, through the mobile application-based interface atthe mobile device, an indication from the user visiting the retaileron-line to connect one or more social networking accounts of the userwith a user account stored at a server of the retailer; obtaining, atthe mobile device and from the server of the retailer, informationidentifying friends of the user; obtaining data indicating that (i) asubset of the identified friends of the user was present at a physicalstore of the retailer within a threshold time period immediatelypreceding the user visiting the retailer on-line, and (ii) the subset ofthe identified friends of the user ordered from the physical store ofthe retailer within the threshold time period immediately preceding theuser visiting the retailer on-line, the data being generated at theserver of the retailer by obtaining, from the one or more socialnetworking accounts of the user, the information identifying the friendsof the user, determining a time and location of orders placed by thefriends of the user, comparing the location of the orders placed by thefriends of the user with a location of the physical store of theretailer, determining whether the time of the orders placed by thefriends of the user satisfies the threshold time period, and determiningthe subset of friends of the user that placed orders at the location ofthe physical store of the retailer at a time that satisfies thethreshold time period; presenting to the user, using the mobileapplication-based interface, information identifying the subset of thefriends that have ordered from the physical store of the retailer;obtaining, at the mobile device through the mobile application-basedinterface, an order from the user visiting the retailer on-line; andcommunicating, from the mobile device to the server of the retailer, theorder from the user visiting the retailer on-line.
 15. The method ofclaim 14, wherein the one or more social networking accounts of the userinclude a Facebook account.
 16. The method of claim 14, wherein theorder from the user further comprises payment information.
 17. Themethod of claim 14, wherein the order from the user further comprisespreferences for one or more products and a requested pickup time for theorder from the user.
 18. The method of claim 14, wherein the operationscomprise storing the order from the user in association with a keywordthat enables the user to resubmit the order from the user at a latertime using the keyword.
 19. The method of claim 18, wherein the orderfrom the user is stored in association with an identifier thatcorresponds to the mobile device.
 20. The method of claim 18, whereinthe operations comprise: receiving, at the mobile device, a command toresubmit the stored order from the user, the command including at leastthe keyword that enables the user to resubmit the order from the user;communicating, from the mobile device, the stored order to the server ofthe retailer such that the server of the retailer charges the user forthe stored order and dispatches the stored order to the physical storeof the retailer for fulfillment; and communicating, from the mobiledevice, the stored order to the one or more social networking accountsof the user such that the stored order is posted on one or more socialnetworking accounts of the user.
 21. A mobile device comprising: one ormore computers and one or more storage devices storing instructions thatare operable, when executed by the one or more computers, to cause theone or more computers to perform operations comprising: presenting, at amobile device, a mobile application-based interface to a user visiting aretailer on-line; receiving, through the mobile application-basedinterface at the mobile device, an indication from the user visiting theretailer on-line to connect one or more social networking accounts ofthe user with a user account stored at a server of the retailer;obtaining, at the mobile device and from the server of the retailer,information identifying friends of the user; obtaining data indicatingthat: (i) a subset of the identified friends of the user was present ata physical store of the retailer within a threshold time periodimmediately preceding the user visiting the retailer on-line, and (ii)the subset of the identified friends of the user ordered from thephysical store of the retailer within the threshold time periodimmediately preceding the user visiting the retailer on-line, the databeing generated at the server of the retailer by obtaining, from the oneor more social networking accounts of the user, the informationidentifying the friends of the user, determining a time and location oforders placed by the friends of the user, comparing the location of theorders placed by the friends of the user with a location of the physicalstore of the retailer, determining whether the time of the orders placedby the friends of the user satisfies the threshold time period, anddetermining the subset of friends of the user that placed orders at thelocation of the physical store of the retailer at a time that satisfiesthe threshold time period; presenting to the user, using the mobileapplication-based interface, information identifying the subset of thefriends that have ordered from the physical store of the retailer;obtaining, at the mobile device through the mobile application-basedinterface, an order from the user visiting the retailer on-line; andcommunicating, from the mobile device to the server of the retailer, theorder for the user visiting the retailer on-line.
 22. The mobile deviceof claim 21, wherein the one or more social networking accounts of theuser include a Facebook account.
 23. The mobile device of claim 21,wherein the order from the user further comprises payment informationand a requested pickup time for the order from the user.
 24. The mobiledevice of claim 21, wherein the operations comprise storing the orderfrom the user in association with a keyword that enables the user atresubmit the order from the user at a later time using the keyword. 25.The mobile device of claim 24, wherein the order from the user is storedin association with an identifier that corresponds to the mobile device.26. The mobile device of claim 24, wherein the operations comprise:receiving, at the mobile device, a command to resubmit the stored orderfrom the user, the command including at least the keyword that enablesthe user to resubmit the order from the user; communicating, from themobile device, the stored order to the server of the retailer such thatthe server of the retailer charges the user for the stored order anddispatches the stored order to the physical store of the retailer forfulfillment; and communicating, from the mobile device, the stored orderto the one or more social networking accounts of the user such that thestored order is posted on the one or more social networking accounts ofthe user.